#include <string>
#include <list>
#include <stack>
#include <iostream>

using namespace std;

void test_stack1()
{
    stack<int> st;
    st.push(1);
    st.push(2);
    st.push(3);
    st.push(4);
    st.push(5);

    cout << "this stack is size:" << st.size() << endl;

    st.top() += 95;

    while(!st.empty())
    {
        cout << st.top() << " ";
        st.pop();
    }
    cout << endl;
    return;
}


int main()
{
    //栈不支持迭代器
    //C++迭代器用于对数据结构中的元素进行顺序访问或随机访问
    //在任何给定时间，您只能访问堆栈的顶部元素
    //永远不会顺序遍历堆栈的元素
    //也不会使用随机访问来获取堆栈中的特定元素
    //您将元素放在一端，然后将元素放在同一端
    //您只能访问该顶部元素，并且无权访问其下方的任何内容
    
    test_stack1();

    return 0;
}
